#include <stdio.h>
int main()
{
    int a[4] = {1, 2, 3, 4};
    int *ptr1 = (int *)(&a + 1);// &a作为整个数据a的首地址，当&a+1的时候相当于 :首地址+16
    int temp =(int)a + 1;
    int *ptr2 = (int *)(temp);
    //printf("*ptr2=%x\n",*ptr2); // 这里会报错,发生段错误，因为int是4字节,int *是8字节,32位系统和64位系统不一样


   int *ptr3 = (int *)((long)a + 1);
   printf("*ptr3=%x\n",*ptr3);
}